This disclosure relates in general to the field of information handling systems, and more particularly to a system and method for interpreting sensor data utilizing virtual sensors.
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
As information handling systems become more complex operating within lower tolerances for failure, it is increasingly important to continuously monitor the operating parameters of the components within the information handling system and any components connected to the information handling system. To assist in monitoring operation and performance, information handling systems utilize sensors. The sensors monitor such operating characteristics as temperature, voltage, current, memory, and the presence of required components. The sensors are typically physical hardware devices, such as temperature monitors or voltage monitors, that are monitored and managed by a controlling agent. For example, a BIOS may manage a memory sensor for detecting errors in memory.
The Intelligent Platform Management Interface (IPMI) specification facilitates communication between the sensors, agents, and the information handling system. The IPMI specification allows for autonomous monitoring and recovery features implemented directly into the platform management hardware and firmware of the information handling system. The platform management of the IPMI allows for the monitoring and controlling of functions that are built in to the information handling system hardware and primarily used for the purpose of monitoring system health including such elements as system temperatures, voltages, fans, power supplies, bus errors, and system physical security. The monitoring and recovery control functions of the IPMI are independent of the information handling system""s main processor, BIOS, and operating system through the use of a micro-controller such as a baseboard management controller (xe2x80x9cBMCxe2x80x9d). The BMC provides the intelligence behind IPMI and the ability for other agents, such as the BIOS or a RAID controller, to access the IPMI system. This allows for a standardized way of integrating information handling system features with the baseboard of the IPMI specification.
The IPMI and the BMC include associated sensors that monitor the health of the IPMI within the information handling system. Additional sensors exist outside of the IPMI that are managed by other software and/or hardware components or agents, such as the BIOS, of the information handling system. The IPMI specification addresses how sensor readings detected by the agents for sensors outside of the IPMI can be logged by the IPMI into a system event log (xe2x80x9cSELxe2x80x9d). But there is no standard way to model a sensor, either within the IPMI or outside the IPMI, so that the current status of each sensor can be shared among the BMC and the multiple agents such as the BIOS, firmware, OpenManage, and diagnostics.
The various agents in the information handling system access and parse the SEL of the BMC in an attempt to retrieve the significant events that have happened in the system. In addition, when an agent desires a current sensor reading or value, the agent directly accesses the sensor in order to retrieve the current sensor value. Because the sensors contain raw data, each agent must interpret the current sensor data using the agent""s own interpretation rules. Therefore, each agent may differently interpret the same sensor value for a single sensor. Each agent also interprets the data in the SEL using the agent""s own interpretation rules resulting in different analysis of the same data by each agent. Each agent differently interpreting the sensor data leads to different and inconsistent views of system health depending upon which agent system health is viewed through.
For both sensors inside and outside of the IPMI, the BMC utilizes the SEL as a historical log of what has happened in the past with respect to the sensors. The agents communicate with the BMC and the SEL to determine what has happened historically with respect to the information handling system. But there is no central repository for the most current sensor readings for sensors both inside and outside the IPMI. If an agent desires the status for two different sensors, the agent must individually access each of the sensors and interpret the sensor data to determine the current status of the two sensors. Having to access each sensor individually to determine the current status for each sensor is an inefficient use of processing resources and does not allow for a centralized and unified way to indicate the current operating status of the information handling system.
Therefore, a need has arisen for a system and method for interpreting sensor data in a consistent and unified manner.
A further need has arisen for a system and method for interpreting sensor data utilizing virtual sensors that provides for a central repository for sensor values.
In accordance with the teachings of the present disclosure, an information handling system and method for interpreting sensor data utilizing virtual sensors are described which substantially eliminate or reduce disadvantages with previous systems and methods for interpreting sensor data. A plurality of virtual sensors allow for a central repository for sensor values from a plurality of physical sensors which results in the consistent and uniform interpretation of the sensor values.
In accordance with one aspect of the present disclosure, an information handling system is provided. The information handling system includes a plurality of physical sensor. A plurality of virtual sensor are associated with the physical sensors and are disposed within a virtual sensor repository. A management controller associates each one of the physical sensors with a virtual sensor within the virtual sensor repository. Additionally, the management controller stores a sensor value from each physical sensor within the associated virtual sensor. The information handling system further includes one or more agents that request sensor values for desired physical sensors from the associated virtual sensors instead of the desired physical sensors and receive the sensor values from the virtual sensors.
More specifically, each physical sensor has a sensor number. The management controller uses the sensor numbers for the physical sensors to associate each physical sensor with a virtual sensor. The management controller obtains the sensor values from the physical sensors, interprets the sensor values in a uniform manner, and stores the sensor values in the virtual sensors. When one of the agents desires a sensor reading or sensor value for a desired physical sensor, the agent accesses information regarding the desired physical sensor to determine if the desired physical sensor is associated with one or more virtual sensors. If the desired physical sensor is associated with a virtual sensor, the agent requests the sensor value for the desired physical sensor from the associated virtual sensor. The management controller provides the sensor value for the desired physical sensor to the requesting agent. In addition, the management controller maintains within the virtual sensor repository an event log which is a historical record of the sensor values for the physical sensors associated with the virtual sensors.
In another aspect of the present disclosure, the physical sensors are associated with the virtual sensors. The agent monitoring a physical sensor not associated with a virtual sensor requests from the management controller that the physical sensor become associated with one of the virtual sensors. The management controller receives the request and determines if there are virtual sensors available for use by the requesting physical sensor. If there are available virtual sensors, the management controller grants to the physical sensor use of one or more of the virtual sensors and associates the physical sensor with the virtual sensor. A sensor data record for the physical sensor is modified to include an indication that the physical sensor is associated with a virtual sensor and that any sensor values for the physical sensor should be obtained from the associated virtual sensor and not the physical sensor.
The present disclosure provides a number of important technical advantages. One important technical advantage is that the sensor values for the physical sensors are interpreted and stored in a consistent and uniform manner. This allows for an accurate representation of the health of the information handling system. Because the management controller interprets the sensor values for all physical sensors, all physical sensor readings are in the same format and interpreted in the same fashion instead of numerous agents differently interpreting the physical sensor values. Since the sensor values stored in the virtual sensor repository are all interpreted by the management controller, each agent requesting the sensor value for the same physical sensor will receive the same interpreted sensor value and the agents will not have to interpret the sensor values using the agents"" own interpretation rules. Agents no longer have to interpret sensor values and each agent receives the same sensor value resulting in consistent views of system health.
Another important technical advantage of the present disclosure is that the virtual sensor repository allows for a centralized location for all sensor values providing a current status for each of the physical sensors. Because a central component, the management controller, obtains and interprets the sensor values from the physical sensors and stores the sensor values in the virtual sensor repository, the agents only have to access the virtual sensor repository instead of each physical sensor to obtain sensor values. An agent wanting to determine the current operating status of the information handling system need only access the virtual sensor repository in order to obtain such information. In addition, the current status of the system can be determined more quickly and more efficiently by an agent because the agent only needs to access the virtual sensor repository instead of every physical sensor within the information handling system.